如何使用 Repository 模式

您所在的位置:网站首页 laravel handle函数 如何使用 Repository 模式

如何使用 Repository 模式

2024-07-10 06:05| 来源: 网络整理| 查看: 265

如何使用 Repository 模式

若将数据库逻辑都写在 Model 里,会造成 model 代码的臃肿难以维护,基于 SOLID 原则,我们应该使用 Repository 模式辅助 Model,将相关的数据库逻辑封装在不同的 Repository,方便后期项目的维护。

Laravel 框架版本

Laravel 5.4.17

数据库逻辑

在 CURD 中,CUR 比较稳定,但 Read 的部分则变化万千,大部分的数据库逻辑都在描述 Read 部分,若将数据库逻辑写在 Controller 或 Model 都不合适,会造成 Controller 或 Model 代码臃肿,如后难以维护。

Model

使用 Repository 模式之后,Model 仅仅当成 Eloquent Class 即可,不需要包含数据库逻辑,仅保留如下部分:

Property: 如 $table``$fillable ..

Mutator: 包括 mutator 与 accessor

Method: relation 类的方法,比如使用 hasMany() 与 belongsTo()

单一对应关系:

hasOne belongsTo morphTo morphOne

多个对应关系指的是使用以下关键词定义的关联模型:

hasMany belongsToMany morphMany morphToMany morphedByMany

因为 Eloquent 会根据数据库字段动态的产生 property 与 method等,若使用 Laravel IDE Helper ,会直接在Model加上 @property 与 @method 描述model的动态 proerty 与 method。 如下app\User.php中安装完Laravel IDE Helper后执行php artisan ide-helper:models后自动生成的内容:



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3